The field of the invention is pseudorandom code generators for laboratory use in testing and evaluation of communication systems and more specifically manual entry, programmable, pseudorandom code generators.
Spread spectrum (SS) communications grew out of research efforts during World War II to provide secure means of communications in hostile environments. Spread spectrum communications are described in Digital Communication Fundamentals and Applications by Bernard Sklar, Prentice Hall, 1988. During the early years of spread spectrum investigation, one technique considered for operating a transmitter and receiver synchronously with a truly random spreading signal was the Transmitted Reference system. In a Transmitted Reference system, the transmitter sends two versions of an unpredictable wideband carrier, one modulated by data and the other unmodulated, which are transmitted on separate channels. At the receiver, the unmodulated carrier is used as a reference signal for despreading the data-modulated carrier. The principal advantage of a Transmitted Reference system is there are no significant synchronization problems at the receiver, since the spread data-modulated signal and the despreading waveform are transmitted simultaneously. The principle disadvantage of Transmitted Reference system is the spreading code is sent in the clear and thus is available to any listener. As such, the system is easily spoofed by a jammer capable of sending a pair of waveforms acceptable to the receiver. Other disadvantages include performance degradation at low signal levels due to noise being present on both transmitted signals and twice the bandwidth and transmitted power are required because of the need to transmit the reference.
Modern spread spectrum systems use a technique called Stored Reference wherein the spreading and despreading waveforms are independently generated at the transmitter and receiver, respectively. The main advantage of a Stored Reference system is that a well-designed code signal cannot be predicted by an unintended receiver monitoring the transmission. The noise-like code signals used in Stored Reference systems cannot be "truly random" as in the case of a Transmitted Reference system. Rather, signals which possess noise-like properties called pseudonoise or pseudorandom signals, are employed as the spreading waveforms.
A linear feedback shift register is often used to generate the pseudorandom spreading code. The shift register operation is controlled by a sequence of clock pulses. At each clock pulse, the contents of each stage in the register are shifted one stage to the right and fed back through a series of interconnected taps. The shift register sequence is usually defined as the output of the last stage. The shift register sequence is dependent on the number of stages, the feedback tap connections and the initial conditions (starting phase). The output sequence is classified as either maximal length or non-maximal length. A maximal length sequence has the property that for an n-stage linear feedback shift register, the sequence repetition period (in clock pulses p) is p=2.sup.n -1. If the sequence length is less than (2.sup.n -1), the sequence is classified as a non-maximal length sequence.
In the Transmitted Reference system, a truly random code can be utilized for spreading and despreading since the code signal and data-modulated code signal are simultaneously transmitted over different regions of the spectrum. The Stored Reference approach cannot use a truly random code signal because a copy of the code needs to be stored or generated at the receiver. For a Stored Reference system, a pseudonoise or pseudorandom code is typically used. A truly random signal is unpredictable and future variations can only be described in a statistical sense. However, a pseudorandom signal is not really random--it is a deterministic periodic signal that is known to both the transmitter and receiver. Even though the signal is deterministic, it possesses statistical properties consistent with sampled white noise and appears to be truly random to an unauthorized listener. There are three basic properties that can be found in any periodic binary sequence as a test for the appearance of randomness. These properties are called balance, run and correlation. If all three property requirements are satisfied, the sequence is classified as a pseudorandom sequence.
The generation of pseudorandom digital codes for spread spectrum analysis and research in the laboratory is of great interest. Currently in the art, the generation of a pseudorandom code for laboratory use in spread spectrum analysis and other research is accomplished by using software, but is limited in speed due to the speed of the executing computer system. Also, software generation of pseudorandom number codes requires the full use of a computer and expensive interface hardware if the codes are to be used with instrumentation. Hardware code generators are also used to generate pseudorandom codes and are often designed for a specific application and do not have the flexibility and programmability desirable in laboratory testing. There is a need in the art for a pseudorandom code generator that is covenient and flexible and capable of serving a multitude of laboratory purposes. The present invention fills that need by providing a manual entry, programmable pseudorandom code generator that requires minimal external equipment to implement.